Method and system for automatically routing a telephonic communication

ABSTRACT

A method for automatically routing a telephonic communication is provided, and includes receiving a customer identifier and communicating with a customer history database storing historic data and determining whether the received customer identifier corresponds to a stored customer identifier in the customer history database, wherein the customer profile included in the stored historic data is based on a portion of a customer&#39;s demographic identity. Historic data corresponding to the stored customer number is identified based on the comparison of the received customer identifier and the stored customer identifier. The telephonic communication is associated with a predetermined communication destination based on the identified historic data. The method and systems additionally generate a customer routing record for the customer that includes the analyzed historic data, and associate the customer routing record with each customer identifier and store the customer routing record in the customer history database to facilitate future customer call routing.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/801,545, filed Jul. 16, 2015, now allowed, which is a continuation ofU.S. patent application Ser. No. 14/616,423, filed Feb. 6, 2015, nowU.S. Pat. No. 9,124,701, issued Sep. 1, 2015, which is a continuation ofU.S. patent application Ser. No. 14/515,642 filed Oct. 16, 2014, nowU.S. Pat. No. 8,983,054, issued Mar. 17, 2015, which is a continuationof U.S. patent application Ser. No. 14/231,327, filed Mar. 31, 2014, nowU.S. Pat. No. 8,891,754, issued Nov. 18, 2014, which is a continuationof U.S. patent application Ser. No. 11/731,478, filed Mar. 30, 2007, nowU.S. Pat. No. 8,718,262, issued May 6, 2014, the entire contents of eachof which is hereby incorporated herein its entirety by express referencethereto.

TECHNICAL FIELD

The invention relates to a method and system for routing a telephoniccommunication, and more particularly, for automatically routing future atelephone communication based on prior analytic attributes.

BACKGROUND OF THE INVENTION

It is known to utilize telephone call centers to facilitate the receipt,response and routing of incoming telephone calls relating to customerservice, retention, and sales. A customer is in contact with a customerservice representative (“CSR”) or CSR agent who is responsible foranswering the customer's inquiries and directing the customer to theappropriate individual, department, information source, or service asrequired to satisfy the customer's needs. It is well known to monitorcalls between a customer and agent. Accordingly call centers typicallyemploy individuals responsible for listening to the conversation betweenthe customer and the agent. While monitoring such calls may occur inreal time, it is often more efficient and useful to record the call forlater review.

Information gathered from the calls is typically used to monitor theperformance of the CSR agents to identify any possible training needs.Based on a review and analysis of the conversation, a monitor will makesuggestions or recommendations to improve the quality of a customer'sexperience.

In many instances, call centers receive calls from repeat customer. Therepeat customer may require assistance with a new issue or additionalassistance with a prior issue. However, a customer may also have hadparticularly favorable, or particularly poor prior interactions with acustomer service representative or transaction experience during a priorcall. This favorable or poor interaction may have been a result ofbehavioral or non-behavioral compatibility with the responding customerservice representative, response time, lack of knowledge,inaccessibility to direct contact with a customer service representativeor various other analytic attributes or factors.

Thus, there is a need in customer relationship management (“CRM”) fortools useful in improving the quality of future customer interactionswith agents by intuitively and automatically routing future calls by thesame customer to an appropriate communication destination; whether aself-service destination or a compatible customer servicerepresentative. In particular, a need exists for tools that will allowfor future call routing based on data collected during prior calls.

The present invention is provided to solve the problems discussed aboveand other problems, and to provide advantages and aspects not previouslyprovided. A full discussion of the features and advantages of thepresent invention is deferred to the following detailed description,which proceeds with reference to the accompanying drawings.

SUMMARY OF THE INVENTION

According to one aspect of the present invention, the disclosure relatesto a non-transitory computer readable medium adapted to control acomputer and including a plurality of code segments for automaticallyrouting a telephonic communication to at least one of a plurality ofcommunication destination addresses, the non-transitory computerreadable medium including the plurality of code segments that, whenexecuted by a processor: receive a customer identifier, wherein thecustomer identifier is generated from at least one of: automatic numberidentification (ANI), a customer voice portal prompted variable, or anIP address;

determine whether the received customer identifier corresponds to astored customer identifier in a customer history database, the customerhistory database being configured to store historic data associated withat least one recorded telephonic communication having a correspondingstored customer identifier, the stored historic data including call typedata, distress assessment data, call preference data and customerprofile; record a telephonic communication from a caller to obtaincaller voice data: mine the historic data associated with the receivedcustomer identifier in the caller voice data; analyze the historic datacorresponding to the received customer identifier and the storedcustomer identifier, wherein the customer profile included in thehistoric data is based on one or more components of a customer'sdemographic identity: associate the telephonic communication with one ofa plurality of communication destination addresses, the association ofthe telephonic communication data with one of the plurality ofcommunication destination addresses being based on the analyzing of thehistoric data; provide routing instructions which include identifyingthe associated communication destination address; generate a customerrouting record for the customer that includes the analyzed historicdata; and associate the customer routing record with each customeridentifier and store the customer routing record in the customer historydatabase to facilitate future customer call routing.

In another aspect, the disclosure relates to a system for automaticallyrouting a telephonic communication to one of a plurality ofcommunication destination addresses, the system including a customerhistory database storing historic data including call type data,distress assessment data, call preference data, and customer profile,and the historic data being associated with a stored customeridentifier; and, a first server configured to receive a customeridentifier input signal from a communication system, wherein thecustomer identifier input signal is generated from at least one of:automatic number identification (ANI), a customer voice portal promptedvariable, or an IP address, the server including logic that, whenexecuted by a processor: communicates with the customer historydatabase; determines whether the received customer identifier inputsignal corresponds to the stored customer identifier in the customerhistory database; record a telephonic communication from a caller toobtain caller voice data; mines the historic data associated with thereceived customer identifier in the caller voice data; analyzes historicdata corresponding to the received customer identifier and the minedhistoric data when the received customer identifier input signalcorresponds to the stored customer identifier in the customer historydatabase, wherein the customer profile included in the historic data isbased on one or more components of a customer's demographic identity;associates the telephonic communication with one of a plurality ofcommunication destination addresses, the association being based on theanalysis of the historic data corresponding to the received customeridentifier and the customer's demographic identity; communicates theassociated communication destination to a switch, wherein the switch isconfigured to route the telephonic communication to the associatedcommunication destination address; generates a customer routing recordfor the customer that includes the analyzed historic data: andassociates the customer routing record with each customer identifier andstores the customer muting record in the customer history database tofacilitate future customer call routing.

In yet another aspect, the disclosure relates to a system forautomatically routing a telephonic communication to one of a pluralityof communication destination addresses, the system including aninteractive voice response system configured to receive telephoniccommunications and caller commands, the interactive voice responsesystem further being configured to communicate with a telephone switchand a routing server; a telephone switch configured to route at leastone of the received telephonic communications to one of a plurality ofcommunication destination addresses; a recording server in operablecommunication with the routing server, the recording server configuredto record a telephonic communication between a caller and a customerservice representative and including logic that, when executed by aprocessor: mines the caller voice data associated with a customeridentifier associated with the telephonic communication, wherein thecustomer identifier is generated from at least one of: automatic numberidentification (ANI), a customer voice portal prompted variable, or anIP address; generates distress assessment data associated with thecaller voice data; generates call preference data associated with thetelephonic communication; and transmits the mined customer identifier,distress assessment data and call preference data to a customer historydatabase; and a routing server configured to receive a transmittedcustomer identifier from the interactive voice response system, therouting server including logic that, when executed by a processor:receives the customer identifier; determines whether the receivedcustomer identifier corresponds to a stored customer identifier in thecustomer history database, wherein the customer history database isconfigured to store historic data associated with at least one recordedtelephonic communication having a corresponding stored customeridentifier, the stored historic data including call type data, distressassessment data, call preference data and customer profile; analyzes thehistoric data corresponding to the received customer identifier and thestored customer identifier; associates the at least one of the receivedtelephonic communication communications with one of a plurality ofcommunication destination addresses, wherein the association of the atleast one of the received telephonic data communications with one of thepredetermined communication destination addresses is based on theanalysis of the stored historic data, wherein the customer profileincluded in the stored historic data is based on one or more componentsof a customer's demographic identity; transmits a signal identifying theassociated communication destination address; generates a customerrouting record for the customer that includes the analyzed historicdata; and associates the customer routing record with each customeridentifier and stores the customer routing record in the customerhistory database to facilitate future customer call routing.

In yet a further aspect, the disclosure relates to a non-transitorycomputer readable medium adapted to control a computer and including aplurality of code segments to automatically routing an electronic voicecommunication to at least one of a plurality of communicationdestination addresses, the non-transitory computer readable mediumincluding the code segments that, when executed by a processor: receivea customer identifier, wherein the customer identifier is generated fromat least one of: automatic number identification (ANI), a customer voiceportal prompted variable, or an IP address; determine whether thereceived customer identifier corresponds to a stored customer identifierin a customer history database, the customer history database beingconfigured to store historic data associated with at least one recordedelectronic voice communication having a corresponding stored customeridentifier, the stored historic data including call type data, distressassessment data, call preference data and customer profile; record anelectronic voice communication from a caller to obtain caller voicedata; mine the historic data associated with the received customeridentifier in the caller voice data; analyze the historic datacorresponding to the received customer identifier and the storedcustomer identifier, wherein the customer profile included in thehistoric data is based on one or more components of a customer'sdemographic identity; associate the electronic voice communication withone of a plurality of communication destination addresses, theassociation of the electronic voice communication with one of theplurality of communication destination addresses being based on theanalyzing of the historic data; provide routing instructions whichinclude identifying the associated communication destination address;generate a customer routing record for the customer that includes theanalyzed historic data; and associate the customer routing record witheach customer identifier and store the customer routing record in thecustomer history database to facilitate future customer call routing.

According to another aspect of the present invention, a computer programfor automatically routing a telephonic communication to at least one ofa plurality of communication destination addresses is provided. Thecomputer program is embodied on a computer readable storage mediumadapted to control a computer. The computer program includes a pluralityof code segments for performing the task. In particular, a code segmentreceives a customer identifier. The computer program then determineswhether the received customer identifier corresponds to a customeridentifier stored in a customer history database. The customer historydatabase is configured to store historic data associated with recordedtelephonic communications having a corresponding stored customeridentifiers. More particularly, the stored historic data includes atleast one of the following: call type data, distress assessment data,behavioral assessment data, call preference data and customer profile.The historic data corresponding to the received customer identifier andthe stored customer identifier is analyzed, and the telephoniccommunication is associated with one of a plurality of communicationdestination addresses. The associating is based on the analysis of thehistoric data. The computer program then transmits a signal identifyingthe associated communication destination address.

According to one aspect of the present invention, the computer programcompares a stored customer profile with a customer servicerepresentative profile. A code segment also generates a score based uponthe comparison of the customer profile with the customer servicerepresentative profile.

According to another aspect of the invention, an audible message istransmitted based on association of the telephonic communication with acommunication destination address. A code segment of the computerprogram can also be provided to generate a customer route record.

According to still another aspect of the invention, the computer programanalyzes the frequency of completed transactions in IVR. An audiblemessage can be generated based on the frequency, indicating that acustomer identifier completes transactions in IVR.

According to the present invention, a system for automatically routing atelephonic communication to one of a plurality of communicationdestination addresses is also provided. The system includes a customerhistory database and a first server configured to receive a customeridentifier from a communication system. The customer history databasestores historic data included of at least one of the following: calltype data, distress assessment data, behavioral assessment data, callpreference data, and customer profile. Further, the historic data beingassociated with a stored customer identifier.

The first server includes logic, or executable instructions in the formof code segments or the like, to execute various functions. Moreparticularly, the first server includes logic for communicating with thecustomer history database. Logic is provided for determining whether thereceived customer identifier corresponds to a stored customer identifierin the customer history database. When the received customer identifiercorresponds to a stored customer identifier in the customer historydatabase, historic data corresponding to the received customeridentifier is analyzed. The first server also includes logic forassociating the telephonic communication with one of a plurality ofcommunication destination addresses. This association is based on theanalysis of the historic data corresponding to the received customeridentifier. Logic is provided for communicating the associatedcommunication destination to a switch. The switch is configured to routethe telephonic communication to the associated communication destinationaddress.

According to still another aspect of the present invention, the systemis further included of a second server in operable communication withthe first server. The second server is configured to record a telephoniccommunication between a caller and a customer service representative andincludes logic for doing so. In particular, logic is provided toseparate a telephonic communication into at least caller voice data andcustomer service representative voice data. The server also includeslogic for analyzing at least the caller voice data by mining theseparated caller voice data and applying a predeterminedlinguistic-based psychological behavioral model to the separated callervoice data. Behavioral assessment data corresponding to the analyzedcaller voice data is then generated. The resultant behavioral assessmentdata can be transmitted to the customer history database.

According to yet another aspect, the logic for separating the telephoniccommunication into a caller voice data and a customer servicerepresentative includes logic for identifying a communication protocolassociated with the telephonic communication and logic for recording thetelephonic communication to a first electronic data file having a firstand second audio track. The caller voice data is automatically recordedon the first audio track based on the identified communication protocol.The customer service representative voice data is automatically recordedon the second audio track based on the identified communicationprotocol.

According to one embodiment of the present invention, the system forautomatically routing a telephonic communication to one of a pluralityof communication destination addresses includes an interactive voiceresponse (IVR) system, a telephone switch, a routing server and arecording server. The IVR is configured to receive telephoniccommunications and caller commands and to communicate with the telephoneswitch and the routing server. The telephone switch is configured toroute a telephonic communication to one of a plurality of communicationdestination addresses.

The recording server is operably coupled, and in operable communicationwith the routing server. As discussed above, the recording server isconfigured to record a telephonic communication between a caller and acustomer service representative. The recording server uses logic toperform the recording functions as described above. As previously noted,the logic can be in the form of hardwired logic gates or software. Thus,logic is provided to generate behavioral assessment data. According toone embodiment, the behavioral assessment data is generated by analyzingthe caller voice data by mining caller voice data associated with thetelephonic communication. A linguistic-based psychological behavioralmodel is applied to the caller voice data. Logic is also provided togenerate distress assessment data and call preference data. Thegenerated behavioral assessment data, distress assessment data and callpreference data to is transmitted to a customer history database asdescribed above.

According to one embodiment of the invention, the routing server isconfigured to receive a transmitted customer identifier from theinteractive voice response system. The routing server also includeslogic, or executable instructions in the form of code segments or thelike, for performing the desired routing function. In particular, logicis provided to receive a customer identifier. The server includes logicto determine whether the received customer identifier corresponds to astored customer identifier in a customer history database. As discussedherein, the customer history database is configured to store historicdata. That historic data is associated with at least one recordedtelephonic communication having a corresponding stored customeridentifier. The stored historic data includes one or more of thefollowing: call type data, distress assessment data, behavioralassessment data, call preference data and customer profile.

The routing server analyzes the historic data corresponding to thereceived customer identifier and the stored customer identifier. Thetelephonic communication is then associated with one of a plurality ofcommunication destination addresses. This association is based on theanalysis of the historic data. The routing sever then transmits a signalidentifying the associated communication destination address.

According to yet another embodiment of the present disclosure, anon-transitory computer readable medium adapted to control a computerand including a plurality of code segments for automatically routing atelephonic communication to at least one of a plurality of communicationdestination addresses, the non-transitory computer readable mediumincluding the code segments that, when executed by a processor receivesa customer identifier, determines whether the received customeridentifier corresponds to a stored customer identifier in a customerhistory database, the customer history database being configured tostore historic data associated with at least one recorded telephoniccommunication having a corresponding stored customer identifier, thestored historic data including call type data, distress assessment data,behavioral assessment data, call preference data and customer profile;records a telephonic communication from a caller to obtain caller voicedata; generates behavioral assessment data by analyzing the caller voicedata by mining the historic data associated with the customer identifierand applying a linguistic-based model to the caller voice data; analyzesthe historic data corresponding to the received customer identifier andthe stored customer identifier, wherein the customer profile included inthe historic data is based on one or more components of a customer'sdemographic identity; associates the telephonic communication with oneof a plurality of communication destination addresses, the associationof the telephonic communication data with one of the plurality ofcommunication destination addresses being based on the analyzing of thehistoric data; and provides routing instructions which includeidentifying the associated communication destination address. In otherembodiments, the disclosure encompasses systems for automaticallyrouting a telephonic communication to one of a plurality ofcommunication destination addresses,

Other features and advantages of the invention will be apparent from thefollowing specification taken in conjunction with the followingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

To understand the present invention, it will now be described by way ofexample, with reference to the accompanying drawings in which:

FIG. 1 a flow chart illustrating a method of routing a telephoniccommunication according to the present invention;

FIG. 2 is a block diagram of the architecture for the system for routinga telephonic communication in accordance with to the present invention;

FIG. 3 is a block diagram of a computer used in connection with thepresent invention;

FIG. 4 is a block diagram of a telephonic communication system with amulti-port PSTN module according to the present invention;

FIG. 5 is a flow chart illustrating a process of recording andseparating a telephonic communication;

FIG. 6 is a flow chart illustrating a process of recording andseparating a telephonic communication;

FIG. 7 is a flow chart illustrating a process of analyzing voice data ofa telephonic communication; and

FIG. 8 is a flow chart illustrating a process of analyzing voice data ofa telephonic communication.

DETAILED DESCRIPTION

While this invention is susceptible of embodiments in many differentforms, there is shown in the drawings and will herein be described indetail preferred embodiments of the invention with the understandingthat the present disclosure is to be considered as an exemplification ofthe principles of the invention and is not intended to limit the broadaspect of the invention to the embodiments illustrated.

Referring to FIGS. 1-8, a method and system for analyzing an electroniccommunication between a customer and a contact center is provided. A“contact center” as used herein can include any facility or systemserver suitable for receiving and recording electronic communicationsfrom customers. Such communications can include, for example, telephonecalls, facsimile transmissions, e-mails, web interactions, voice-over IP(“VoIP”) and video. It is contemplated that these communications may betransmitted by and through any type of telecommunication device and overany medium suitable for carrying data. For example, the communicationsmay be transmitted by or through telephone lines, cable or wirelesscommunications. The contact center of the present invention is adaptedto receive and route telephone calls that occur between a customer (orcaller) and a contact center during fulfillment of a customer/agenttransaction.

As shown in FIGS. 1 and 2, one embodiment of the system used inconnection with the present method includes an interactive voiceresponse (IVR) system 206, a telephone switch or switching system 205, arouting server 306 and a recording server 209. As will be described infurther detail below, a customer identifier associated with a telephoniccommunication is received. Based on the received customer identifier,and stored historic data associated with the customer identifier, thetelephonic communication is routed to a desired communicationdestination address. It is contemplated that the method for routing atelephonic communication of the present invention can be implemented bya computer program. Now is described in more specific terms, thecomputer hardware associated with operating the computer program thatmay be used in connection with the present invention.

Process descriptions or blocks in figures should be understood asrepresenting modules, segments, or portions of code which include one ormore executable instructions for implementing specific logical functionsor steps in the process. Alternate implementations are included withinthe scope of the embodiments of the present invention in which functionsmay be executed out of order from that shown or discussed, includingsubstantially concurrently or in reverse order, depending on thefunctionality involved, as would be understood by those having ordinaryskill in the art.

FIG. 3 is a block diagram of a computer or server 12. For purposes ofunderstanding the hardware as described herein, the terms “computer” and“server” have identical meanings and are interchangeably used. Computer12 includes control system 14. The control system 14 of the inventioncan be implemented in software (e.g., firmware), hardware, or acombination thereof. In a currently contemplated preferred embodiment,the control system 14 is implemented as an executable program insoftware, and is executed by one or more special or general purposedigital computer(s), such as a personal computer (PC; IBM-compatible,Apple-compatible, or otherwise), personal digital assistant,workstation, minicomputer, or mainframe computer. An example of ageneral purpose computer that can implement the control system 14 of thepresent invention is shown in FIG. 3. The control system 14 may residein, or have portions residing in, any computer such as, but not limitedto, a general purpose personal computer. Therefore, computer 12 of FIG.3 may be representative of any computer in which the control system 14resides or partially resides.

Generally, in terms of hardware architecture, as shown in FIG. 3, thecomputer 12 includes a processor 16, memory 18, and one or more inputand/or output (I/O) devices 20 (or peripherals) that are communicativelycoupled via a local interface 22. The local interface 22 can be, forexample, but not limited to, one or more buses or other wired orwireless connections, as is known in the art. The local interface 22 mayhave additional elements, which are omitted for simplicity, such ascontrollers, buffers (caches), drivers, repeaters, and receivers, toenable communications. Further, the local interface may include address,control, and/or data connections to enable appropriate communicationsamong the other computer components.

The processor 16 is a hardware device for executing software,particularly software stored in memory 18. The processor 16 can be anycustom made or commercially available processor, a central processingunit (CPU), an auxiliary processor among several processors associatedwith the computer 12, a semiconductor based microprocessor (in the formof a microchip or chip set), a macroprocessor, or generally any devicefor executing software instructions. Examples of suitable commerciallyavailable microprocessors are as follows: a PA-RISC seriesmicroprocessor from Hewlett-Packard Company, an 80×8 or Pentium seriesmicroprocessor from Intel Corporation, Intel Xeon (Single and DualCore), Intel Xeon Processor MP (Single and Dual Core), a PowerPCmicroprocessor from IBM, a Sparc microprocessor from Sun Microsystems,Inc., or a 8xxx series microprocessor from Motorola Corporation.

The memory 18 can include any one or a combination of volatile memoryelements (e.g., random access memory (RAM, such as DRAM, SRAM, SDRAM,etc.)) and nonvolatile memory elements (e.g., ROM, hard drive, tape,CDROM, etc.). Moreover, memory 18 may incorporate electronic, magnetic,optical, and/or other types of storage media. The memory 18 can have adistributed architecture where various components are situated remotefrom one another, but can be accessed by the processor 16.

The software in memory 18 may include one or more separate programs,each of which comprises an ordered listing of executable instructionsfor implementing logical functions. In the example of FIG. 3, thesoftware in the memory 18 includes the control system 14 in accordancewith the present invention and a suitable operating system (O/S) 24. Anon-exhaustive list of examples of suitable commercially availableoperating systems 24 is as follows: (a) a Windows operating systemavailable from Microsoft Corporation, including Microsoft Vista andWindows Mobile Client; (b) a Netware operating system available fromNovell, Inc.; (c) a Macintosh operating system available from AppleComputer, Inc.; (d) a UNIX operating system, which is available forpurchase from many vendors, such as the Hewlett-Packard Company, SunMicrosystems, Inc., and AT&T Corporation; (e) a LINUX operating system,which is freeware that is readily available on the Internet; (f) a runtime Vxworks operating system from WindRiver Systems, Inc.; or (g) anappliance-based operating system, such as that implemented in handheldcomputers or personal digital assistants (PDAs) (e.g., PalmOS availablefrom Palm Computing, Inc., and Windows CE available from MicrosoftCorporation). The operating system 24 essentially controls the executionof other computer programs, such as the control system 14, and providesscheduling, input-output control, file and data management, memorymanagement, and communication control and related services.

The control system 14 may be a source program, executable program(object code), script, or any other entity comprising a set ofinstructions to be performed. When a source program, the program needsto be translated via a compiler, assembler, interpreter, or the like,which may or may not be included within the memory 18, so as to operateproperly in connection with the O/S 24. Furthermore, the control system14 can be written as (a) an object oriented programming language, whichhas classes of data and methods, or (b) a procedure programminglanguage, which has routines, subroutines, and/or functions, for examplebut not limited to, C, C++, C# (C Sharp), PHP, Pascal, Basic, Fortran,Cobol, Perl, Java, and Ada. In one embodiment, the control system 14 iswritten in C++. The I/O devices 20 may include input devices, forexample but not limited to, a keyboard, mouse, scanner, microphone,touch screens, interfaces for various medical devices, bar code readers,stylus, laser readers, radio-frequency device readers, etc. Furthermore,the I/O devices 20 may also include output devices, for example but notlimited to, a printer, bar code printers, displays, etc. Finally, theI/O devices 20 may further include devices that communicate both inputsand outputs, for instance but not limited to, a modulator/demodulator(modem; for accessing another device, system, or network), a radiofrequency (RF) or other transceiver, a telephonic interface, a bridge, arouter, etc.

If the computer 12 is a PC, workstation, PDA, or the like, the softwarein the memory 18 may further include a basic input output system (BIOS)(not shown in FIG. 3). The BIOS is a set of software routines thatinitialize and test hardware at startup, start the O/S 24, and supportthe transfer of data among the hardware devices. The BIOS is stored inROM so that the BIOS can be executed when the computer 12 is activated.

When the computer 12 is in operation, the processor 16 is configured toexecute software stored within the memory 18, to communicate data to andfrom the memory 18, and to generally control operations of the computer12 pursuant to the software. The control system 14 and the O/S 24, inwhole or in part, but typically the latter, are read by the processor16, perhaps buffered within the processor 16, and then executed.

When the control system 14 is implemented in software, as is shown inFIG. 3, it should be noted that the control system 14 can be stored onany computer readable medium for use by or in connection with anycomputer related system or method. In the context of this document, a“computer-readable medium” can be any medium that can store,communicate, propagate, or transport the program for use by or inconnection with the instruction execution system, apparatus, or device.The computer readable medium can be for example, but not limited to, anelectronic, magnetic, optical, electromagnetic, infrared, orsemiconductor system, apparatus, device, or propagation medium. Morespecific examples (a non-exhaustive list) of the computer-readablemedium would include the following: an electrical connection(electronic) having one or more wires, a portable computer diskette(magnetic), a random access memory (RAM) (electronic), a read-onlymemory (ROM) (electronic), an erasable programmable read-only memory(EPROM, EEPROM, or Flash memory) (electronic), an optical fiber(optical), and a portable compact disc read-only memory (CDROM)(optical). The control system 14 can be embodied in anycomputer-readable medium for use by or in connection with an instructionexecution system, apparatus, or device, such as a computer-based system,processor-containing system, or other system that can fetch theinstructions from the instruction execution system, apparatus, or deviceand execute the instructions.

In another embodiment, where the control system 14 is implemented inhardware, the control system 14 can be implemented with any or acombination of the following technologies, which are each well known inthe art: a discrete logic circuit(s) having logic gates for implementinglogic functions upon data signals, an application specific integratedcircuit (ASIC) having appropriate combinational logic gates, aprogrammable gate array(s) (PGA), a field programmable gate array(FPGA), etc.

As may be seen in FIG. 4, a customer sending a telephonic signal mayaccess a contact center 10 directly through the public switchedtelephone network (PSTN) 203. Alternatively, the telephonic signal canbe distributed through a private branch exchange (PBX), having a publicswitched telephone network (PSTN) 203 connected to the PBX through a PBXswitch 205. The PBX switch 205 provides an interface between the PSTN203 and a local network. Preferably, the interface is controlled bysoftware stored on a telephony server 207 coupled to the PBX switch 205.The PBX switch 205, using interface software, connects trunk and linestation interfaces of the public switch telephone network 203 tostations of a local network or other peripheral devices contemplated byone skilled in the art. Further, in another embodiment, the PBX switchmay be integrated within a telephony server 207. The stations mayinclude various types of communication devices connected to the network,including the telephony server 207, a recording server 209, telephonestations 215, and client personal computers 213 equipped with telephonestations 215. The local network may further include fax machines andmodems and other devices.

According to the present invention, computer telephony integration(“CTI”) technology is provided. In a preferred embodiment discussedherein, CTI resides on a telephony server 207. However, it will beunderstood by those skilled in the art that CTI can reside on its ownserver or at other hardware described herein. Generally, in terms ofhardware architecture, the telephony server 207 includes a processor,memory, and one or more input and/or output (I/O) devices (orperipherals) that are communicatively coupled via a local interface. Theprocessor can be any custom-made or commercially available processor, acentral processing unit (CPU), an auxiliary processor among severalprocessors associated with the telephony server 207, a semiconductorbased microprocessor (in the form of a microchip or chip set), amacroprocessor, or generally any device for executing softwareinstructions. The memory of the telephony server 207 can include any oneor a combination of volatile memory elements (e.g., random access memory(RAM, such as DRAM, SRAM, SDRAM, etc.)) and nonvolatile memory elements(e.g., ROM, hard drive, tape, CDROM, etc.). The telephony server 207 mayfurther include a keyboard and a mouse for control purposes, and anattached graphic monitor for observation of software operation. It willbe understood that the telephony server may include standard CTItechnology, such as that sold by Cisco, Avaya, Genesys or other providerof CTI providers.

According to one embodiment, the telephony server 207 also incorporatesPBX control software to control the initiation and termination ofconnections between stations and via outside trunk connections to thePSTN 203. In addition, the software may monitor the status of alltelephone stations 211 in real-time on the network and may be capable ofresponding to telephony events to provide traditional telephone service.This may include the control and generation of the conventionalsignaling tones such as dial tones, busy tones, ring back tones, as wellas the connection and termination of media streams between telephones onthe local network. Further, the PBX control software may use amulti-port module 223 and PCs to implement standard PBX functions suchas the initiation and termination of telephone calls, either across thenetwork or to outside trunk lines, the ability to put calls on hold, totransfer, park and pick up calls, to conference multiple callers, and toprovide caller ID information. Telephony applications such as voice mailand auto attendant may be implemented by application software using thePBX as a network telephony services provider.

Referring to FIG. 4, in one embodiment, the telephony server 207 isequipped with multi-port PSTN module 223 having circuitry and softwareto implement a trunk interface 217 and a local network interface 219.The PSTN module 223 comprises a control processor 221 to manage thetransmission and reception of network messages between the PBX switch205 and the telephony server 207. The control processor 221 is alsocapable of directing network messages between the PBX switch 205, thelocal network interface 291, the telephony network server 207, and thetrunk interface 217. In the one embodiment, the local network usesTransmission Control Protocol/Internet Protocol (TCP/IP), known as VoiceOver IP (VoIP). The network messages may contain computer data,telephony transmission supervision, signaling and various media streams,such as audio data and video data. The control processor 221 directsnetwork messages containing computer data from the PBX switch 205 to thetelephony network server 207 directly through the multi-port PSTN module223.

The control processor 221 may include buffer storage and control logicto convert media streams from one format to another, if necessary,between the trunk interface 217 and local network. The trunk interface217 provides interconnection with the trunk circuits of the PSTN 203.The local network interface 219 provides conventional software andcircuitry to enable the telephony server 207 to access the localnetwork. The buffer RAM and control logic implement efficient transferof media streams between the trunk interface 217, the telephony server207, the digital signal processor 225, and the local network interface219.

The trunk interface 217 utilizes conventional telephony trunktransmission supervision and signaling protocols required to interfacewith the outside trunk circuits from the PSTN 203. The trunk lines carryvarious types of telephony signals such as transmission supervision andsignaling, audio, fax, or modem data to provide plain old telephoneservice (POTS). In addition, the trunk lines may carry othercommunication formats such T1, ISDN or fiber service to providetelephony or multimedia data images, video, text or audio.

The control processor 221 manages real-time telephony event handlingpertaining to the telephone trunk line interfaces, including managingthe efficient use of digital signal processor resources for thedetection of caller ID, DTMF, call progress and other conventional formsof signaling found on trunk lines. The control processor 221 alsomanages the generation of telephony tones for dialing and otherpurposes, and controls the connection state, impedance matching, andecho cancellation of individual trunk line interfaces on the multi-portPSTN module 223.

Preferably, conventional PBX signaling is utilized between trunk andstation, or station and station, such that data is translated intonetwork messages that convey information relating to real-time telephonyevents on the network, or instructions to the network adapters of thestations to generate the appropriate signals and behavior to supportnormal voice communication, or instructions to connect voice mediastreams using standard connections and signaling protocols. Networkmessages are sent from the control processor 221 to the telephony server207 to notify the PBX software in the telephony server 207 of real-timetelephony events on the attached trunk lines. Network messages arereceived from the PBX Switch 205 to implement telephone call supervisionand may control the set-up and elimination of media streams for voicetransmission.

The local network interface 219 includes conventional circuitry tointerface with the local network. The specific circuitry is dependent onthe signal protocol utilized in the local network. In one embodiment,the local network may be a local area network (LAN) utilizing IPtelephony. IP telephony integrates audio and video stream control withlegacy telephony functions and may be supported through the H.323protocol. H.323 is an International TelecommunicationUnion-Telecommunications protocol used to provide voice and videoservices over data networks. H.323 permits users to make point-to-pointaudio and video phone calls over a local area network. IP telephonysystems or VoIP can be integrated with the public telephone systemthrough a local network interface 219, such as an IP/PBX-PSTN gateway,thereby allowing a user to place telephone calls from an enabledcomputer. For example, a call from an IP telephony client to aconventional telephone would be routed on the LAN to the IP/PBX-PSTNgateway. The IP/PBX-PSTN gateway translates H.323 protocol toconventional telephone protocol and routes the call over theconventional telephone network to its destination. Conversely, anincoming call from the PSTN 203 is routed to the IP/PBX-PSTN gateway andtranslates the conventional telephone protocol to H.323 protocol.

As noted above, PBX trunk control messages are transmitted from thetelephony server 207 to the control processor 221 of the multi-portPSTN. In contrast, network messages containing media streams of digitalrepresentations of real-time voice are transmitted between the trunkinterface 217 and local network interface 219 using the digital signalprocessor 225. The digital signal processor 225 may include bufferstorage and control logic. Preferably, the buffer storage and controllogic implement a first-in-first-out (FIFO) data buffering scheme fortransmitting digital representations of voice audio between the localnetwork to the trunk interface 217. It is noted that the digital signalprocessor 225 may be integrated with the control processor 221 on asingle microprocessor.

The digital signal processor 225 can include a coder/decoder (CODEC)connected to the control processor 221. The CODEC may be a type TCM29c13integrated circuit made by Texas Instruments, Inc. In one embodiment,the digital signal processor 225 receives an analog or digital voicesignal from a station within the network or from the trunk lines of thePSTN 203. The CODEC converts the analog voice signal into in a digitalfrom, such as digital data packets. It should be noted that the CODEC isnot used when connection is made to digital lines and devices. From theCODEC, the digital data is transmitted to the digital signal processor225 where telephone functions take place. The digital data is thenpassed to the control processor 221 which accumulates the data bytesfrom the digital signal processor 225. It is preferred that the databytes are stored in a first-in-first-out (FIFO) memory buffer untilthere is sufficient data for one data packet to be sent according to theparticular network protocol of the local network. The specific number ofbytes transmitted per data packet depends on network latencyrequirements as selected by one of ordinary skill in the art. Once adata packet is created, the data packet is sent to the appropriatedestination on the local network through the local network interface219. Among other information, the data packet contains a source address,a destination address, and audio data. The source address identifies thelocation the audio data originated from and the destination addressidentifies the location the audio data is to be sent.

The system permits bidirectional communication by implementing a returnpath allowing data from the local network, through the local networkinterface 219, to be sent to the PSTN 203 through the multi-line PSTNtrunk interface 217. Data streams from the local network are received bythe local network interface 219 and translated from the protocolutilized on the local network to the protocol utilized on the PSTN 203.The conversion of data may be performed as the inverse operation of theconversion described above relating to the IP/PBX-PSTN gateway. The datastream is restored in appropriate form suitable for transmission throughto either a connected telephone 211, 215 or an interface trunk 217 ofthe PSTN module 223, or a digital interface such as a T1 line or ISDN.In addition, digital data may be converted to analog data fortransmission over the PSTN 203.

Generally, the PBX switch of the present invention may be implementedwith hardware or virtually. A hardware PBX has equipment located localto the user of the PBX system. The PBX switch 205 utilized may be astandard PBX manufactured by Cisco, Avaya, Siemens AG, NEC, Nortel,Toshiba, Fujitsu, Vodavi, Mitel, Ericsson, Panasonic, or InterTel. Incontrast, a virtual PBX has equipment located at a central telephoneservice provider and delivers the PBX as a service over the PSTN 203.

The Recording Server

As illustrated in FIG. 2, the system includes a recording server 209 forrecording network messages transmitted within the system. The recordingserver 209 may be connected to a port on the local network to the PSTNtrunk line or by other known methods of interface and connection. Therecording server 209 is also communicably coupled to the telephonyserver 207. The recording server 209 includes a control system software,namely, recording software. The recording software of the invention canbe implemented in software (e.g., firmware), hardware, or a combinationthereof. In a currently contemplated preferred embodiment, the recordingsoftware is implemented in software, as an executable program, and isexecuted by one or more special or general purpose digital computer(s).The recording software may reside in, or have portions residing in anycomputer such as, but not limited to, a general purpose personalcomputer.

Generally, hardware architecture is the same as that discussed above andshown in FIG. 3. Specifically, the recording server 209 includes aprocessor, memory, and one or more input and/or output (I/O) devices (orperipherals) that are communicatively coupled via a local interface aspreviously described. The local interface can be, for example, but notlimited to, one or more buses or other wired or wireless connections, asis known in the art. The local interface may have additional elements,which are omitted for simplicity, such as controllers, buffers (caches),drivers, repeaters, and receivers, to enable communications. Further,the local interface may include address, control, and/or dataconnections to enable appropriate communications among the othercomputer components.

In one preferred embodiment, the recording server 209 incorporatesrecording software for recording a telephone signal based on the sourceaddress and/or destination address of the signal. The method utilized bythe recording server 209 depends on the communication protocol utilizedon the communication lines to which the recording server 209 is coupled.The signal carrying audio data of a communication between at least twousers can be an analog signal or a digital signal in the form of anetwork message. In one embodiment, the signal is an audio datatransmitted according to a signaling protocol, for example the H.323protocol described above.

One example of a recording method that may be used in the present systemis illustrated in FIG. 5 and described herein. In the embodiment of FIG.5, when an outside caller reaches the system through the multi-lineinterface trunk 217, their voice signal is digitized (if needed) andconverted into digital data packets 235 according to the communicationprotocol utilized on the local network of the system. The data packet235 comprises a source address identifying the address of the outsidecaller, a destination address identifying the address of the call centeragent, and first constituent audio data comprising at least a portion ofthe outside callers voice. The data packet 235 can further compriserouting data identifying how the data packet 235 should be routedthrough the system and other relevant data. Once the data packet 235 iscreated, the data packet 235 is sent to the appropriate destination onthe local network, such as to a call center agent, through the localnetwork interface 219. The PBX and/or an automatic call distributor(ACD) can determine the initial communication setup, such as theconnection state, impedance matching, and echo cancellation, accordingto predetermined criteria.

Similar to the process described above, when the call center agentspeaks, their voice is digitized (if needed) and converted into digitaldata packet 235 according to the communication protocol utilized on thelocal network. The data packet 235 comprises a source addressidentifying the address of the call center agent, a destination addressidentifying the address of the outside caller, and second constituentaudio data comprising at least a portion of the call center agent'svoice. The data packet 235 is received by the local network interface219 and translated from the communication protocol utilized on the localnetwork to the communication protocol utilized on the PSTN 203. Theconversion of data can be performed as described above. The data packet235 is restored in appropriate form suitable for transmission through toeither a connected telephone 211, 215 or an interface trunk 217 of thePSTN module 223, or a digital interface such as a T1 line or ISDN. Inaddition, digital data can be converted to analog data for transmissionthrough the PSTN.

The recording server 209 receives either a data packet 235 comprising:the source address identifying the address of the outside caller, adestination address identifying the address of the call center agent,and the first constituent audio data comprising at least a portion ofthe outside callers voice; or a data packet 235 comprising a sourceaddress identifying the address of the call center, a destinationaddress identifying the address of the outside caller, and secondconstituent audio data comprising at least a portion of the customer'sagent voice. It is understood by one of ordinary skill in the art thatthe recording server 209 is programmed to identify the communicationprotocol utilized by the local network and extract the audio data withinthe data packet 235. In one embodiment, the recording server 209 canautomatically identify the utilized communication protocol from aplurality of communication protocols. The plurality of communicationprotocols can be stored in local memory or accessed from a remotedatabase.

The recording server 209 comprises recording software to record thecommunication session between the outside caller and a call center agentin a single data file in a stereo format. The first data file 241 has atleast a first audio track 237 and a second audio track 237. Once atelephone connection is established between an outside caller and a callcenter agent, the recording software creates a first data file 241 torecord the communication between the outside caller and the call centeragent. It is contemplated that the entire communication session or aportion of the communication session can be recorded.

Upon receiving the data packet 235, the recording server 209 determineswhether to record the audio data contained in the data packet 235 ineither the first audio track 237 or the second audio track 239 of thefirst data file 241 as determined by the source address, destinationaddress, and/or the audio data contained within the received data packet235. Alternatively, two first data files can be created, wherein thefirst audio track is recorded to the one of the first data file and thesecond audio track is recorded to the second first data file. In oneembodiment, if the data packet 235 comprises a source addressidentifying the address of the outside caller, a destination addressidentifying the address of the call center agent, and first constituentaudio data, the first constituent audio data is recorded on the firstaudio track 237 of the first data file 241. Similarly, if the datapacket 235 comprises a source address identifying the address of thecall center agent, a destination address identifying the address of theoutside caller, and second constituent audio data, the secondconstituent audio data is recorded on the second audio track 239 of thefirst data file 241. It should be noted the first and second constituentaudio data can be a digital or analog audio waveform or a textualtranslation of the digital or analog waveform. The recording process isrepeated until the communication link between the outside caller andcall center agent is terminated.

As noted above, the recording server 209 can be connected to the trunklines of the PSTN 203 as seen in FIG. 2. The PSTN 203 can utilize adifferent protocol and therefore, the recording server 209 is configuredto identify the communication protocol utilized by the PSTN 203,recognize the source and destination address of a signal and extract theaudio data from the PSTN 203. The recording server 209 is programmed ina manner as known to one of ordinary skill in the art.

Once the communication link is terminated, the recording server 209 endsthe recording session and stores the single data file having therecorded communication session in memory. After the first data file isstored in memory, the recording server 209 can extract either or both ofthe first constituent audio data from the first audio track of the firstdata file or the second constituent audio data from the second audiotrack of the first data file. In one embodiment, the first constituentaudio data extracted from the first audio track is stored in a firstconstituent data file 243. Similarly, the second constituent audio dataextracted from the second audio track can be stored in a secondconstituent data file 245. The first and second constituent data files243, 245 can be compressed before being stored in memory. The extracteddata can be in the form of a digital or analog audio waveform or can bea textual translation of the first or second constituent audio data. Itis contemplated that either or both of the first constituent data file243 or the second constituent data file 245 can be further analyzed orprocessed. For example, among other processes and analyses, filteringtechniques can be applied to the first constituent data file and/or thesecond constituent data file. Moreover, event data, such as silenceperiods or over-talking, can be identified through analysis techniquesknown to those skilled in the art.

Further, as illustrated in FIG. 5, the first constituent data file 243and second constituent data file 245 can be merged together into asingle second data file 247. The first and second constituent data filescan be merged in a stereo format where the first constituent audio datafrom the first constituent data file 243 is stored on a first audiotrack of the second data file 247 and the second constituent audio datafrom the second constituent data file 245 is stored on a second audiotrack of the second data file 247. Alternatively, the first and secondconstituent data files can be merged in a mono format where the firstconstituent audio data from the first constituent data file 243 and thesecond constituent audio data from the second constituent data file 245are stored on a first audio track of the second data file 247.Additionally, the first and second constituent audio data can be mergedinto a document having a textual translation of the audio data. In sucha case, identifiers can be associated with each of the merged first andsecond constituent audio data in order to associate the merged firstconstituent audio data with the outside caller, and associate the mergedsecond constituent audio data with the call center agent. The seconddata file 247 can be compressed before being stored.

It is known in the art that “cradle-to-grave” recording may be used torecord all information related to a particular telephone call from thetime the call enters the contact center to the later of: the callerhanging up or the agent completing the transaction. All of theinteractions during the call are recorded, including interaction with anIVR system, time spent on hold, data keyed through the caller's key pad,conversations with the agent, and screens displayed by the agent athis/her station during the transaction.

As shown in FIGS. 6-8, once the first and second constituent voice dataare separated one from the other, each of the first and secondconstituent voice data can be independently mined and analyzed. It willbe understood that “mining” as referenced herein is to be consideredpart of the process of analyzing the constituent voice data. It is alsocontemplated by the present invention that the mining and behavioralanalysis can be conducted on either or both of the constituent voicedata.

It is contemplated by the present invention that mining and analysis inaccordance with the present invention can be applied directly to voicedata configured in audio format. Preferably, however, the voice data tobe mined and analyzed is first translated into a text file. It will beunderstood by those of skill that the translation of audio to text andsubsequent data mining may be accomplished by systems known in the art.For example, the method of the present invention may employ softwaresuch as that sold under the brand name Audio Mining SDK by Scansoft,Inc., or any other audio mining software suitable for such applications.

In one embodiment of the present invention, the voice data is mined forbehavioral signifiers associated with a linguistic-based psychologicalbehavioral model. In particular, the voice data is searched fortext-based keywords (i.e., behavioral signifiers) relevant to apredetermined psychological behavioral model. One preferred suchpsychological behavioral model and behavioral analysis is described incommonly assigned U.S. patent application Ser. No. 11/131,486, which isincorporated herein by reference.

As shown in FIG. 8, the resultant behavioral assessment data 55 derivedfrom the analysis of the single voice data may be used to evaluatequalities of a single communicant (e.g., the customer or agentbehavioral type, etc.), and to route future calls as described infurther detail herein. In any event, the results generated by analyzingvoice data through application of a psychological behavioral model tothe voice data are stored in a customer history database 302 forsubsequent analysis of the communication, as well as for use in routingthe call.

In addition to the behavioral assessment of voice data, the method ofthe present invention may also employ distress analysis of voice data.Linguistic-based distress analysis is preferably conducted on both thetextual translation of the voice data and the audio file containingvoice data. Accordingly, linguistic-based analytic tools as well asnon-linguistic analytic tools may be applied to the audio file. Forexample, one of skill in the art may apply spectral analysis to theaudio file voice data while applying a word spotting analytical tool tothe text file. Linguistic-based word spotting analysis and knownalgorithms for identifying distress can be applied to the textualtranslation of the communication. Preferably, the resultant distressdata is also stored in the customer history database 302 for subsequentanalysis of the communication and use in call routing.

It is also often desirable to analyze non-linguistic phone eventsoccurring during the course of a conversation such as hold times,transfers, “dead-air,” overtalk, etc. Accordingly, in one embodiment ofthe present invention, phone event data resulting from analysis of thesenon-linguistic events is generated. As shown in FIG. 7, the phone eventdata is preferably generated by analyzing non-linguistic informationfrom both the separated constituent voice data, or from the subsequentlygenerated audio file containing at least some of the remerged audio dataof the original audio waveform. It is also contemplated that the phoneevent data can be generated before the audio waveform is separated. Thegenerated phone event data can also be stored in the customer historydatabase to use in future call routing.

According to a preferred embodiment of the invention shown in FIG. 8,the customer voice data is mined and analyzed. The resulting behavioralassessment data 55, phone event data 70 and distress assessment data 72from the analyzed voice data are comparatively analyzed in view of theparameters of the psychological behavioral model to provide anassessment of a given communication 56. From this comparative analysis,call assessment data relating to the totality of the call may begenerated 58.

Generally, call assessment data 58 is comprised of behavioral assessmentdata 55, phone event data 70 and distress assessment data 72. Theresultant call assessment data 58 may be subsequently viewed to providean objective assessment or rating of the quality, satisfaction orappropriateness of the interaction between an agent and a customer. Thecall assessment data 58 may generate resultant data that is also usefulfor characterizing the success of the interaction between a customer andan agent and for determining desired routing of subsequent phone callsfrom the same customer.

According to the present invention, the system can employ aword-spotting algorithm that categorizes communications into particulartypes or categories based on words used in the communication. In oneembodiment, each communication is automatically categorized as a servicecall type (e.g., a caller requesting assistance for servicing apreviously purchased product), a retention call type (e.g., a callerexpressing indignation, or having a significant life change event), or asales call type (e.g., a caller purchasing an item offered by a seller).In one scenario, it may be desirable to analyze all of the “sales calltype” communications received by a contact center during a predeterminedtime frame. In that case, the user would analyze each of the sales calltype communications from that time period by applying the predeterminedpsychological behavioral model to each such communication.

Alternatively, the communications may be grouped according to customercategories, and the user may desire to analyze the communicationsbetween the call center and communicants within a particular customercategory. For example, it may be desirable for a user to perform ananalysis only of a “platinum customers” category, consisting of high endinvestors, or a “high volume distributors” category comprised of auser's best distributors.

As shown in FIG. 2, the recording server 209 is communicably coupled toa customer history database 302 configured to store historic datarelating to telephonic communications recorded by the recording server209. More particularly, the customer history database 302 is preferablya relational database that stores call assessment data (i.e., behavioralassessment data, phone event data and distress assessment data)corresponding to the customer identifier to which that communication andcall assessment data is associated. Additionally, the customer historydatabase 302 is configured to store call preference data and thecustomer profile associated with the corresponding customer identifier.It is contemplated that the customer profile includes information basedupon one or more of the following components of a customer's demographicidentity: gender, race, age, income, education, and personality type. Itis also contemplated that other information relating to a customer'sdemographic identity can be included in the customer profile. Further,information relating to a customer's preference for resolving acommunication directly with an agent or through an IVR environment alsocan be included in the customer history database.

Thus, according to one embodiment of the present invention, the systemincludes and IVR system 206 a telephone switch 205, a recording server209 and a routing server 300. The IVR system 206 is configured toreceive telephonic communications and caller commands. The IVR system206 is also configured to communicate with a telephone switch 205 and arouting server 300. The telephone switch 205 is configured to route atelephonic communication to one of a plurality of communicationdestination addresses.

According to one embodiment of the present invention, the recordingserver 209 is operably coupled, and in operable communication with therouting server 300. As discussed above, the recording server 209 isconfigured to record a telephonic communication between a caller and acustomer service representative. The recording server 209 uses logic toperform the recording functions as described above. As previously noted,the logic can be in the form of hardwired logic gates or software. Thus,logic is provided to generate behavioral assessment data as discussedabove. According to one embodiment shown in FIGS. 6-8, the behavioralassessment data is generated by analyzing the caller voice data by:mining the caller voice data and applying a linguistic-basedpsychological behavioral model to the caller voice data. Logic is alsoprovided to generate distress assessment data 72 and call preferencedata 71. The generated behavioral assessment data 55, distressassessment data 72 and call preference data 71 is transmitted to acustomer history database 302 as described above.

The Routing Server

As illustrated in FIG. 2, the system also includes a routing server 300configured to receive a transmitted customer identifier and communicateto a switch 205, typically via the telephony server 207, the appropriatecommunication destination address to which to route a call. Like therecording server 209, the routing server 300 may be connected to a porton the local network. Alternatively, the routing server 300 may beconnected to a PSTN trunk line. The routing server is also communicablycoupled to the telephony server 207. The routing server 300 includes acontrol system software, such as routing software. The routing softwareof the invention can be implemented in software (e.g., firmware),hardware, or a combination thereof. In the currently contemplated bestmode, the recording software is implemented in software, as anexecutable program, and is executed by one or more special or generalpurpose digital computer(s). The routing software may reside in, or haveportions residing in, any computer such as, but not limited to, ageneral purpose personal computer.

Generally, hardware architecture is the same as that discussed above andshown in FIG. 3. Specifically, the routing server 300 includes aprocessor and memory. The routing server 300 can also include one ormore input and/or output (I/O) devices (or peripherals) that arecommunicatively coupled via a local interface as previously described.The local interface can be, for example, but not limited to, one or morebuses or other wired or wireless connections, as is known in the art.The local interface may have additional elements, which are omitted forsimplicity, such as controllers, buffers (caches), drivers, repeaters,and receivers, to enable communications. Further, the local interfacemay include address, control, and/or data connections to enableappropriate communications among the other computer components.

As noted above, the routing server 300 incorporates software forreceiving a transmitted customer identifier. The customer identifier canbe received from an IVR, directly from the PSTN 203 or from other inputdevice. The routing server 300 also incorporates software for sendinginstructions for routing a telephonic communication to an appropriatecommunication destination address based on certain criteria. Moreparticularly, the routing server 300 is configured to receive a customeridentifier. It will be understood that the customer identifier may begenerated by any conventional means, including but not limited to,automatic number identification (ANI), voice portal prompted variables,IP addresses or any other suitable identifiers.

The routing server 300 determines whether the received customeridentifier corresponds to a stored customer identifier in a customerhistory database 302. As discussed herein, the customer history database302 is configured to store historic data. That historic data isassociated with at least one recorded telephonic communication having acorresponding stored customer identifier. The stored historic data iscomprised of at least one of the following: call type data, distressassessment data, behavioral assessment data, call preference data andcustomer profile.

The routing server 300 also analyzes the historic data corresponding tothe received customer identifier and the stored customer identifier. Thetelephonic communication is associated with one of a plurality ofcommunication destination addresses. This association step is based onthe analysis of the historic data. Finally, the routing sever 300transmits a signal identifying the associated communication destinationaddress. This signal may be transmitted directly to a switch mechanismor through CTI.

According to one embodiment of the present invention, the routing server300 compares a stored customer profile with a customer servicerepresentative profile. In this manner, the system or software of thepresent invention can include in a call routing analysis considerationof a scored comparison of the compatibility of the customer with thecustomer service representative. The customer profile score can begenerated as a result of an analysis of various one or ones ofdemographic identifiers associated with a customer and a customerservice representative. Accordingly, in one preferred embodiment inwhich the customer profile score is based on a personality (derived fromthe behavioral assessment data) and gender match, the scoring may beallocated according to the following scale in Table 1:

TABLE 1 Customer/CSR Match Score Strong Personality Match, Same Gender 1Strong Personality Match, Different Gender 2 Moderate Personality Match,Same Gender 3 Moderate Personality Match, Different Gender 4 WeakPersonality Match, Same Gender 5 Weak Personality Match, DifferentGender 6

The routing server 300 can be, according to one embodiment, configuredto transmit an audible message based on the association of thetelephonic communication with a communication destination address.Accordingly, it is contemplated that upon selection of an appropriatecommunication destination address to which a telephonic communicationwill be routed, the system indicates to the customer the ultimatedestination of the telephonic communication. It will be understood thatthe audible message is not limited to an indication of the communicationdestination address, but instead may communicate other informationrelating to the analysis of the customer history database.

It is also useful to gather an understanding of the number oftransactions that a customer associated with a customer identifier hascompleted in IVR or another interface (such as a web interface). Inparticular, such information can be useful in determining whether toroute a customer telephonic communication through IVR or directly to acustomer service representative agent. Thus, according to one embodimentof the present invention, the system further determines the number ofpreviously completed transactions in IVR corresponding to a receivedcustomer identifier.

According to one embodiment of the invention, the system is furtherconfigured to generate a customer route record. The route record willinclude relevant information about the caller and the call activity. Forexample, the route record may include information relating to the callfrequency, call type, the customer profile, the customer behavioralassessment data and distress assessment data. It will be understood thatthe route record can include other data relevant to the customer'sinteraction with a customer service representative agent or call center.

Using information from the customer route record, the system cangenerate audible messages appropriate for the customer during subsequentinteractions. For example, an audible message relating to call type maybe generated that states, “if you are calling about your previous [calltype] on [date], please press 1,” As another example, an audible messagerelating to a customer's previous distress assessment data may begenerated to state, “we understand you may have had an unsatisfactoryexperience in a call on [date]; recognizing your importance to us, weare routing your call to a specialized group of customer servicerepresentatives.”

Thus, the present invention allows for automatic call routing based onpast indicators and analytic attributes. The following chart (Table 2)outlines exemplary experiences of a customer during an interaction as aresult of various analytic outputs.

TABLE 2 Analytic Attribute Analysis Message Routing Self Service X optouts over Y “We understand your Bypass IVR and route Preference Throughperiod of time preference not to use our directly to a customer IVRvoice responsive system, service representative so we are routing youdirectly to one of our customer service representatives” Call TypeCaller calls back “If you are calling about Route to a customized withinx days of a your previous [insert IVR script scored call call type] on[insert date], please press 1” Level of Distress Caller calls back “Weunderstand you may Bypass IVR and rout within x days after a have had anunsatisfactory directly to specialized scored call with high experiencein a call on customer service distress assessment [insert date];recognizing representative values and no your importance to us, weresolution are routing your call to a specialized group of customerservice representatives.” Profile Match Match score based No messageAttempt to route to on personality and compatible customer genderservice representative

While the specific embodiments have been illustrated and described,numerous modifications come to mind without significantly departing fromthe spirit of the invention, and the scope of protection is only limitedby the scope of the accompanying claims.

What is claimed is:
 1. A non-transitory computer readable medium adaptedto control a computer and comprising a plurality of code segments forautomatically routing a telephonic communication to at least one of aplurality of communication destination addresses, the non-transitorycomputer readable medium comprising the plurality of code segments that,when executed by a processor: receive a customer identifier, wherein thecustomer identifier is generated from at least one of: automatic numberidentification (ANI), a customer voice portal prompted variable, or anIP address; determine whether the received customer identifiercorresponds to a stored customer identifier in a customer historydatabase, the customer history database being configured to storehistoric data associated with at least one recorded telephoniccommunication having a corresponding stored customer identifier, thestored historic data comprising call type data, distress assessmentdata, call preference data and customer profile; record a telephoniccommunication from a caller to obtain caller voice data; mine thehistoric data associated with the received customer identifier in thecaller voice data; analyze the historic data corresponding to thereceived customer identifier and the stored customer identifier, whereinthe customer profile included in the historic data is based on one ormore components of a customer's demographic identity; associate thetelephonic communication with one of a plurality of communicationdestination addresses, the association of the telephonic communicationdata with one of the plurality of communication destination addressesbeing based on the analyzing of the historic data; provide routinginstructions which comprise identifying the associated communicationdestination address; generate a customer routing record for the customerthat comprises the analyzed historic data; and associate the customerrouting record with each customer identifier and store the customerrouting record in the customer history database to facilitate futurecustomer call routing.
 2. The non-transitory computer readable medium ofclaim 1, further comprising a code segment that, when executed by aprocessor, compares a stored customer profile with a customer servicerepresentative profile, wherein the stored customer profile includes thecustomer's demographic identity selected from one or more of gender,race, age, income, and education.
 3. The non-transitory computerreadable medium of claim 2, further comprising a code segment that, whenexecuted by a processor, generates a score based upon the comparison ofthe stored customer profile with the customer service representativeprofile.
 4. The computer readable medium of claim 1, further comprisinga code segment that, when executed by a processor, transmits an audiblemessage based on the association of the telephonic communication withone of the plurality of communication destination addresses.
 5. Thenon-transitory computer readable medium of claim 1, wherein the customerrouting record comprises information related to the customer'sinteraction with a customer service representative agent or call center,and a plurality of call frequency, call type, the customer profile,behavioral assessment data, and distress assessment data, each relatedto the customer.
 6. The non-transitory computer readable medium of claim1, further comprising a code segment that, when executed by a processor,determines the number of previously completed transactions in IVRcorresponding to the received customer identifier.
 7. The non-transitorycomputer readable medium of claim 1, wherein the customer identifier isgenerated by automatic number identification.
 8. The non-transitorycomputer readable medium of claim 1, wherein the customer identifier isgenerated from at least one customer voice portal prompted variable. 9.The non-transitory computer readable medium of claim 1, wherein thehistoric data is comprised of stored behavioral data generated by mininghistoric data associated with the customer identifier.
 10. Thenon-transitory computer readable medium of claim 1, which furthercomprises generating an audible message for the customer during asubsequent interaction based on the customer routing record.
 11. Thenon-transitory computer readable medium of claim 1, wherein the customerrouting record further comprises gender and personality type of acustomer.
 12. A system for automatically routing a telephoniccommunication to one of a plurality of communication destinationaddresses, the system comprising: a customer history database storinghistoric data comprising call type data, distress assessment data, callpreference data, and customer profile, and the historic data beingassociated with a stored customer identifier; and, a first serverconfigured to receive a customer identifier input signal from acommunication system, wherein the customer identifier input signal isgenerated from at least one of: automatic number identification (ANI), acustomer voice portal prompted variable, or an IP address, the servercomprising logic that, when executed by a processor: communicates withthe customer history database; determines whether the received customeridentifier input signal corresponds to the stored customer identifier inthe customer history database; record a telephonic communication from acaller to obtain caller voice data; mines the historic data associatedwith the received customer identifier in the caller voice data; analyzeshistoric data corresponding to the received customer identifier and themined historic data when the received customer identifier input signalcorresponds to the stored customer identifier in the customer historydatabase, wherein the customer profile included in the historic data isbased on one or more components of a customer's demographic identity;associates the telephonic communication with one of a plurality ofcommunication destination addresses, the association being based on theanalysis of the historic data corresponding to the received customeridentifier and the customer's demographic identity; communicates theassociated communication destination to a switch, wherein the switch isconfigured to route the telephonic communication to the associatedcommunication destination address; generates a customer routing recordfor the customer that comprises the analyzed historic data; andassociates the customer routing record with each customer identifier andstores the customer routing record in the customer history database tofacilitate future customer call routing.
 13. The system of claim 12, theserver further comprising logic that, when executed by a processor,compares the stored customer profile with a customer servicerepresentative profile, wherein the stored customer profile includes thecustomer's demographic identity selected from one or more of gender,race, age, income, and education.
 14. The system of claim 13, the serverfurther comprising logic that, when executed by a processor, generates ascore based upon the comparison of the stored customer profile with thecustomer service representative profile.
 15. The system of claim 12,further comprising a second server in operable communication with thefirst server and the customer history database, the second serverconfigured to record the telephonic communication between a caller and acustomer service representative and comprising logic that, whenexecuted, is adapted to: separate the telephonic communication into atleast caller voice data and customer service representative voice data;and analyze at least the separated caller voice data by mining theseparated caller voice data for the customer identifier.
 16. The systemof claim 15, further comprising logic that, when executed by aprocessor, transmits the separated caller voice data to the customerhistory database.
 17. The system of claim 16, wherein the logic forseparating the telephonic communication into the caller voice data andthe customer service representative voice data comprises logic adaptedto identify a communication protocol associated with the telephoniccommunication and to record the telephonic communication to a firstelectronic data file comprising a first and second audio track, thecaller voice data being automatically recorded on the first audio trackbased on the identified communication protocol, and the customer servicerepresentative voice data being automatically recorded on the secondaudio track based on the identified communication protocol.
 18. A systemfor automatically routing a telephonic communication to one of aplurality of communication destination addresses, the system comprising:an interactive voice response system configured to receive telephoniccommunications and caller commands, the interactive voice responsesystem further being configured to communicate with a telephone switchand a routing server; a telephone switch configured to route at leastone of the received telephonic communications to one of a plurality ofcommunication destination addresses; a recording server in operablecommunication with the routing server, the recording server configuredto record a telephonic communication between a caller and a customerservice representative and comprising logic that, when executed by aprocessor: mines the caller voice data associated with a customeridentifier associated with the telephonic communication, wherein thecustomer identifier is generated from at least one of: automatic numberidentification (ANI), a customer voice portal prompted variable, or anIP address; generates distress assessment data associated with thecaller voice data; generates call preference data associated with thetelephonic communication; and transmits the mined customer identifier,distress assessment data and call preference data to a customer historydatabase; and a routing server configured to receive a transmittedcustomer identifier from the interactive voice response system, therouting server comprising logic that, when executed by a processor:receives the customer identifier; determines whether the receivedcustomer identifier corresponds to a stored customer identifier in thecustomer history database, wherein the customer history database isconfigured to store historic data associated with at least one recordedtelephonic communication having a corresponding stored customeridentifier, the stored historic data comprising call type data, distressassessment data, call preference data and customer profile; analyzes thehistoric data corresponding to the received customer identifier and thestored customer identifier; associates the at least one of the receivedtelephonic communication communications with one of a plurality ofcommunication destination addresses, wherein the association of the atleast one of the received telephonic data communications with one of thepredetermined communication destination addresses is based on theanalysis of the stored historic data, wherein the customer profileincluded in the stored historic data is based on one or more componentsof a customer's demographic identity; transmits a signal identifying theassociated communication destination address; generates a customerrouting record for the customer that comprises the analyzed historicdata; and associates the customer routing record with each customeridentifier and stores the customer routing record in the customerhistory database to facilitate future customer call routing.
 19. Thesystem of claim 18, wherein the recording server is configured toseparate the telephonic communication into caller voice data andcustomer service representative voice data, the recording server furthercomprising logic adapted to: identify a communication protocolassociated with the telephonic communication; and, record the telephoniccommunication to a first electronic data file comprising a first andsecond audio track, the caller voice data being automatically recordedon the first audio track based on the identified communication protocol,and the customer service representative voice data being automaticallyrecorded on the second audio track based on the identified communicationprotocol.
 20. The system of claim 18, wherein the logic is embodied in anon-transitory computer readable medium that, when executed by aprocessor, controls a computer.
 21. The system of claim 18, furthercomprising logic that, when executed by a processor, compares a storedcustomer profile with a customer service representative profile, whereinthe stored customer profile includes the customer's demographic identityselected from one or more of gender, race, age, income, and education.22. A non-transitory computer readable medium adapted to control acomputer and comprising a plurality of code segments to automaticallyrouting an electronic voice communication to at least one of a pluralityof communication destination addresses, the non-transitory computerreadable medium comprising the code segments that, when executed by aprocessor: receive a customer identifier, wherein the customeridentifier is generated from at least one of: automatic numberidentification (ANI), a customer voice portal prompted variable, or anIP address; determine whether the received customer identifiercorresponds to a stored customer identifier in a customer historydatabase, the customer history database being configured to storehistoric data associated with at least one recorded electronic voicecommunication having a corresponding stored customer identifier, thestored historic data comprising call type data, distress assessmentdata, call preference data and customer profile; record an electronicvoice communication from a caller to obtain caller voice data; mine thehistoric data associated with the received customer identifier in thecaller voice data; analyze the historic data corresponding to thereceived customer identifier and the stored customer identifier, whereinthe customer profile included in the historic data is based on one ormore components of a customer's demographic identity; associate theelectronic voice communication with one of a plurality of communicationdestination addresses, the association of the electronic voicecommunication with one of the plurality of communication destinationaddresses being based on the analyzing of the historic data; providerouting instructions which comprise identifying the associatedcommunication destination address; generate a customer routing recordfor the customer that comprises the analyzed historic data; andassociate the customer routing record with each customer identifier andstore the customer routing record in the customer history database tofacilitate future customer call routing.
 23. The non-transitory computerreadable medium of claim 22, further comprising a code segment that,when executed by a processor, compares a stored customer profile with acustomer service representative profile, wherein the stored customerprofile includes the customer's demographic identity selected from oneor more of gender, race, age, income, and education.
 24. Thenon-transitory computer readable medium of claim 23, further comprisinga code segment that, when executed by a processor, generates a scorebased upon the comparison of the stored customer profile with thecustomer service representative profile.
 25. The computer readablemedium of claim 22, further comprising a code segment that, whenexecuted by a processor, transmits an audible message based on theassociation of the electronic voice communication with one of theplurality of communication destination addresses.
 26. The non-transitorycomputer readable medium of claim 22, wherein the customer routingrecord comprises information related to the customer's interaction witha customer service representative agent or call center, and a pluralityof call frequency, call type, the customer profile, behavioralassessment data, and distress assessment data, each related to thecustomer.
 27. The non-transitory computer readable medium of claim 22,further comprising a code segment that, when executed by a processor,determines the number of previously completed transactions in IVRcorresponding to the received customer identifier.
 28. Thenon-transitory computer readable medium of claim 22, wherein thecustomer identifier is generated by automatic number identification. 29.The non-transitory computer readable medium of claim 22, wherein thecustomer identifier is generated from at least one customer voice portalprompted variable.
 30. The non-transitory computer readable medium ofclaim 22, wherein the electronic voice communication comprises atelephonic communication, a voice-over IP communication, or a voicecomponent of a video communication.